package com.jijs.guava.base;

import com.google.common.base.CharMatcher;

/**
 * Created by jjs on 2017/1/1.
 */
public class CharMatcherTest {

    public static void testCharMatcher() {

        //如果你想从字符串中得到所有的数字，那么你可以这样：
        String str1 = CharMatcher.digit().retainFrom("some text 89983 and more");
        //  如果你想把字符串中的数据都去掉，可以如下：
        String str2 = CharMatcher.digit().removeFrom("some text 89983 and more");

        System.out.println(str1);
        System.out.println(str2);
    }

    public static void test2(){
        String string = "adsf1234zxcv";
        //原字符串
        System.out.println(string);

//去掉控制字符(\t,\n,\b...)
        System.out.println(CharMatcher.javaIsoControl().removeFrom(string));

//获取所有的数字
        System.out.println(CharMatcher.digit().retainFrom(string));

//把多个空格替换为一个包括\t,并去掉首位的空格
        System.out.println(CharMatcher.whitespace().trimAndCollapseFrom(string, ' '));

//把所有的数字用"*"代替
        System.out.println(CharMatcher.javaDigit().replaceFrom(string, "*"));

//获取所有的数字和小写字母
        System.out.println(CharMatcher.javaDigit().or(CharMatcher.javaLowerCase()).retainFrom(string));

//获取所有的大写字母
        System.out.println(CharMatcher.javaUpperCase().retainFrom(string));

//获取所有单字节长度的符号
        System.out.println(CharMatcher.singleWidth().retainFrom(string));
    }

    public static void main(String[] args) {
//        testCharMatcher();
        test2();
    }

}
